Click Here!
home account info subscribe login search My ITKnowledge FAQ/help site map contact us


 
Brief Full
 Advanced
      Search
 Search Tips
To access the contents, click the chapter and section titles.

Oracle Performance Tuning and Optimization
(Publisher: Macmillan Computer Publishing)
Author(s): Edward Whalen
ISBN: 067230886x
Publication Date: 04/01/96

Bookmark It

Search this book:
 
Previous Table of Contents Next


Architectural Overview

Windows NT is based on a microkernel architecture. In a microkernel architecture, the core kernel is very small because most of the OS functionality is removed from the kernel. The kernel is the core of the operating system; it is where all base functionality exists. By removing most of the OS functionality from the kernel, the system is very modular; large pieces of the OS can be easily replaced.

Although a microkernel does not provide additional performance, it does provide a flexibility that OS and device driver developers can take advantage of. By having a flexible subsystem architecture, OS changes such as file systems, hardware architecture, and memory subsystems can easily be replaced.

In Windows NT, hardware support is provided through the Hardware Abstraction Layer (HAL). The HAL is provided by hardware vendors to support the base architecture of their system as well as to provide device driver support. Because of the microkernel and HAL, Windows NT can support different architectures such as Intel, DEC Alpha, MIPS, PowerPC, and so on. The microkernel is the common code base on which each of these architectures is based.

Most 16-bit applications written for Windows can run on non-Intel architectures by using a compatibility mode driver. Applications written specifically for Windows NT can be ported to non-Intel platforms with minimal effort. However, applications that have not been written to take advantage of a particular architecture may not run optimally.

Oracle is currently supported only on the Intel architecture. As with all Oracle ports, Oracle has been optimized for Windows NT and specifically optimized for Windows NT on Intel platforms.

The Windows NT architecture provides for the use of threads, sometimes known as lightweight processes. By using threads instead of processes, much of the overhead associated with process switching is reduced. Threads are automatically created when the Oracle instance is started (see Table 12.1).

Table 12.1 Oracle Service Threads

Thread Number Oracle Process

0, 1 Oracle Service
2 PMON
3 DBWR
4 LGWR
5 SMON
6 RECO

A shadow thread is created on behalf of each user accessing the Oracle database. Remember that the shadow processes communicate with the user and interact with Oracle to carry out the user’s requests. For example, if the user process requests a piece of data not already in the SGA, the shadow process is responsible for reading the data blocks from the data files into the SGA. Under Windows NT, these processes are invoked as kernel threads. These threads each have their own thread number.

Tuning Considerations

With Windows NT, probably the most important tuning consideration is ensuring that sufficient physical memory is available to run Oracle and the required number of server processes. Windows NT uses virtual memory, which means that Oracle and user processes can allocate an almost unlimited amount of memory through paging. If you are not careful, you may overconfigure the amount of virtual memory you are using and exceed the amount of physical memory in the system. If this occurs, the system begins paging and performance is severely degraded.

In addition to the concern about memory, other areas of importance in tuning the Windows NT system include the network and I/O subsystems and the reduction in OS overhead.

Memory

Windows NT is the opposite extreme from the NetWare system. Where NetWare uses no virtual memory, Windows NT uses only virtual memory. Because all memory in the system is treated equally, without limitations, it is important to be careful of user processes consuming large amounts of memory and paging out the SGA. In Windows NT, there are no limitations on memory used for user processes, disk caching, print caching, and so on; thus, it is best to dedicate the Windows NT server to either file and print services or to application services.

If you use Asynchronous I/O (AIO) and Oracle can lock down memory for AIO, the database block buffers are not swappable. Monitor the system on a regular basis to make sure that no paging is occurring in the system.

Reduce Unnecessary Memory Usage

You can take some measures to reduce the amount of memory used by Windows NT. Use the Control Panel’s Network Settings screen to choose the Maximize Throughput for Network Applications option. This optimizes the server memory for network applications, reducing some of the file system caching and overhead in memory management. Also remove any network protocols not needed by the system to cut down on system overhead and memory usage through the Control Panel.

Also use the Control Panel to turn off any services you are not using. Doing so reduces memory usage and CPU overhead. By reducing all the unnecessary services, you can increase the performance of the system.

SGA Tuning

To maximize performance, allocate as much memory as possible to the SGA. Use the techniques discussed in Chapters 9 and 10 to determine whether the memory can best be used for the shared pool or for database block buffers.

Because the SGA resides in virtual memory, it is important that you not allocate so much memory for the SGA that the system pages. The overhead of paging and swapping overshadows any benefit you may receive from a larger SGA.

Remember to save memory for the user processes. You should frequently monitor your system to make sure that no paging occurs at any time.


Previous Table of Contents Next


Products |  Contact Us |  About Us |  Privacy  |  Ad Info  |  Home

Use of this site is subject to certain Terms & Conditions, Copyright © 1996-2000 EarthWeb Inc.
All rights reserved. Reproduction whole or in part in any form or medium without express written permission of EarthWeb is prohibited.